package com.liuzheng.actiondemo;

import javax.swing.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

public class MouseActionListener extends JFrame implements MouseListener {
    //鼠标监听器
    public MouseActionListener(){
        this.setSize(420,500);
        this.setAlwaysOnTop(true);
        this.setAlwaysOnTop(true);
        //设置界面居中
        this.setLocationRelativeTo(null);
        //设置关闭模式
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        //取消默认居中放置
        this.setLayout(null);
        JButton button = new JButton("点我");
        //设置按钮的位置和大小
        button.setBounds(150,200,100,50);
        //给按钮添加一个监听器-this 表示本类对象，实现了ActionListener接口，所以可以使用this
        button.addMouseListener(this);
        //将按钮添加到界面
        this.add(button);
        //给按钮添加一个监听器-this 表示本类对象，实现了ActionListener接口，所以可以使用this
        this.setVisible(true);
    }
    @Override
    public void mouseClicked(MouseEvent e) {
        //按钮被点击后，会执行这个方法
        System.out.println("鼠标被点击了");
    }

    @Override
    public void mousePressed(MouseEvent e) {
        //鼠标被按下后，会执行这个方法
        System.out.println("鼠标被按下了");
    }

    @Override
    public void mouseReleased(MouseEvent e) {
        //鼠标被松开后，会执行这个方法
        System.out.println("鼠标被松开了");
    }

    @Override
    public void mouseEntered(MouseEvent e) {
        //鼠标进入后，会执行这个方法
        System.out.println("鼠标进入了");
    }

    @Override
    public void mouseExited(MouseEvent e) {
        //鼠标离开后，会执行这个方法
        System.out.println("鼠标离开了");
    }
}
